import axios from 'axios'
import useToken from '../stores/token'
import config from '../config'
import router from '../router/router'
import notification from './notification'
//获取请求路径
const baseURL = config.baseURL

//创建实例
const service = axios.create({ baseURL })

service.interceptors.request.use(config => {
    const { token } = useToken()
    if (token) {
        config.headers.jwt = token
    }
    // config.headers.jwt = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJsb2dpbiI6eyJpZCI6MX0sImlhdCI6MTczMDg3MzMwM30.bz8DapWV-vnc1D1Vhf30Mjyv2eMR-N81tUCg_Gqm2QQ'
    return config
})

service.interceptors.response.use(response => {
    const { errno, errmsg, data } = response.data
    if (errno === 0) {
        if (errmsg !== '') {
            notification({
                message: errmsg,
                type: 'success'
            })
        }
        return data || true
    }
    notification({
        message: errmsg,
        type: 'error'
    })
    if (errno === 2) {
        router.push({ name: 'login' })
    }
    return false
}, error => {
    notification({
        message: '请求失败',
        type: 'error'
    })
})







//在请求中加请求头，带token
// service.interceptors.request.use(config => {
//     const { token } = useToken()
//     if (token) {
//         config.headers.jwt = token
//     }
//     return config
// })

//响应的统一处理
// service.interceptors.response.use(response => {
//     const { errno, data, errmsg } = response.data
//     if (errno === 0) {
//         if (errmsg !== '') {
//             notification({
//                 message: errmsg,
//                 type: 'success'
//             })
//         }
//         return data || true
//     }
//     notification({
//         message: errmsg,
//         type: 'error'
//     })
//     if (errno === 2) {
//         router.push({ name: 'login' })
//     }
//     return false
// }, error => {
//     loadingInstance.close()
//     notification({
//         message: '请求失败',
//         type: 'error'
//     })
// })
export default service